#pragma once


// CFilterDialog dialog

class CFilterDialog : public CDialog
{
	DECLARE_DYNAMIC(CFilterDialog)

public:
	CFilterDialog(CWnd* pParent = NULL);   // standard constructor
	virtual ~CFilterDialog();


// Dialog Data
	enum { IDD = IDD_DLG_FILTER };

protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	afx_msg void OnTvnSelchangedTreeValue(NMHDR *pNMHDR, LRESULT *pResult);
	afx_msg void OnNMClickTreeValue(NMHDR *pNMHDR, LRESULT *pResult);
	afx_msg void OnBnClickedOk();

	DECLARE_MESSAGE_MAP()
	CTreeCtrl m_Tree;
	POINT m_MovePt;
	CArray<CString,CString> m_aryValue;
	CArray<CString,CString> m_aryFilter;

public:
	virtual BOOL OnInitDialog();
	void SetMousePoint(const POINT pt);
	void AddValue(LPCTSTR lpValue);

	const CArray<CString,CString>& GetArrayFilter() const { return m_aryFilter; }
	
};
